Exception handling হল একটি প্রক্রিয়া যা প্রোগ্রামের সময়ে ঘটতে পারে এমন অপ্রত্যাশিত ত্রুটিগুলি পরিচালনা করতে ব্যবহৃত হয়। C++-এ, try, catch, এবং throw কিওয়ার্ডগুলি ব্যবহার করে ত্রুটি পরিচালনা করা হয়। এটি প্রোগ্রামের কার্যকারিতা ও স্থায়িত্ব নিশ্চিত করে।
Exception Handling এর প্রধান কিওয়ার্ডগুলি
- try:
tryব্লকে সেই কোডটি লেখা হয় যেখানে ত্রুটি ঘটতে পারে। - catch:
catchব্লকটি ত্রুটি সনাক্ত করার জন্য ব্যবহৃত হয়। এটিtryব্লকে ঘটে যাওয়া ত্রুটির জন্য একটি প্রতিকার প্রদান করে। - throw:
throwকিওয়ার্ড ব্যবহার করে একটি ত্রুটি ছুড়ে দেওয়া হয়।
সাধারণ সিনট্যাক্স
try {
// কোড যা ত্রুটি ঘটতে পারে
} catch (type_of_exception e) {
// ত্রুটি পরিচালনার কোড
} catch (...) {
// অজানা ত্রুটি পরিচালনার কোড
}
উদাহরণ (C++)
#include <iostream>
#include <stdexcept> // std::runtime_error
int divide(int a, int b) {
if (b == 0) {
throw std::runtime_error("Division by zero is not allowed."); // ত্রুটি ছুঁড়ে দেওয়া
}
return a / b;
}
int main() {
int x = 10;
int y = 0;
try {
int result = divide(x, y); // এখানে ত্রুটি ঘটবে
std::cout << "Result: " << result << std::endl;
} catch (const std::runtime_error& e) {
std::cout << "Error: " << e.what() << std::endl; // ত্রুটি বার্তা প্রদর্শন
} catch (...) {
std::cout << "An unknown error occurred." << std::endl;
}
return 0;
}
finally ব্লক
C++-এ finally ব্লক নেই, তবে কিছু অন্যান্য ভাষায় (যেমন Java) finally ব্লক ব্যবহার করে প্রতিটি ক্ষেত্রে কোড চালানো হয়, এমনকি ত্রুটি ঘটলে বা না ঘটলে।
C++ এ ত্রুটি পরিচালনার বৈশিষ্ট্য
- স্পষ্টতা: ত্রুটি সনাক্তকরণ এবং সঠিক ব্যবস্থা গ্রহণ সহজ করে।
- স্থায়িত্ব: প্রোগ্রাম চলাকালীন ত্রুটি ঘটলে, এটি পুরো প্রোগ্রামকে ক্র্যাশ না করে সঠিকভাবে পরিচালনা করতে সক্ষম।
- ডেবাগিং: ত্রুটি এবং সমস্যাগুলি সনাক্ত করতে সহায়ক।
উপসংহার
Exception handling প্রোগ্রামে অপ্রত্যাশিত পরিস্থিতিতে পরিচালনার একটি শক্তিশালী উপায়। C++ এ try, catch, এবং throw কিওয়ার্ডগুলি ব্যবহার করে ত্রুটি সনাক্তকরণ এবং সঠিক ব্যবস্থা গ্রহণের মাধ্যমে প্রোগ্রামের স্থায়িত্ব এবং কার্যকারিতা বাড়ানো যায়।
Read more